home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #1 / Ham Radio 2000.iso / ham2000 / packet / ms_exe / lineloss.asc < prev    next >
Encoding:
Text File  |  1990-05-23  |  8.8 KB  |  277 lines

  1. 'LINELOSS.BAS: true line-loss program..Module 7
  2.  
  3. GOSUB TITLE
  4.  
  5. MENU:
  6. CLS
  7.  
  8.      PRINT "╔═══════════════════════════════════════════════════════════════╗"
  9.      PRINT "║  TRUE TRANSMISSION LINE LOSS & VSWR CALCULATIONS - MODULE 7   ║"
  10.      PRINT "╚═══════════════════════════════════════════════════════════════╝"
  11.  
  12.  
  13.   PRINT "CHOOSE:"
  14.   PRINT
  15.   PRINT "    1. CONVERT BETWEEN VSWR AND REFLECTED POWER."
  16.   PRINT "    2. FIND RATED LINE LOSS AT OPERATING FREQUENCY"
  17.   PRINT "       FROM RATED VALUE AT ANOTHER FREQUENCY."
  18.   PRINT "    3. CALCULATIONS, USING CONDITIONS AT TRANSMITTER END."
  19.   PRINT "    4. CALCULATIONS, USING CONDITIONS AT ANTENNA END."
  20.   PRINT "    5. QUIT - EXIT MODULE."
  21.   PRINT "                           ENTER CHOICE 1-5:";
  22.  
  23.     INPUT CHOICE
  24.  
  25.     ON CHOICE GOTO CONVERT, COAX, SOURCE, LOAD, ENDING
  26.  
  27. CONVERT:
  28. CLS
  29.      PRINT "╔═══════════════════════════════════════════════════════════════╗"
  30.      PRINT "║  TRUE TRANSMISSION LINE LOSS & VSWR CALCULATIONS - MODULE 7   ║"
  31.      PRINT "╚═══════════════════════════════════════════════════════════════╝"
  32.      PRINT
  33.      PRINT "CHOOSE:"
  34.      PRINT
  35.      PRINT "    1. FIND VSWR FROM FORWARD AND REFLECTED POWER."
  36.      PRINT "    2. FIND REFLECTED POWER FROM VSWR AND FORWARD POWER."
  37.      PRINT "    3. FIND FORWARD POWER FROM VSWR AND REFLECTED POWER."
  38.      PRINT "    4. RETURN TO MAIN MENU."
  39.      PRINT "                             ENTER CHOICE 1,2,3 OR 4:";
  40.        INPUT CHOICE
  41.        ON CHOICE GOTO CONVERT1, CONVERT2, CONVERT3, MENU
  42.        GOTO CONVERT   'catch incorrect choice
  43.  
  44. CONVERT1:
  45.      PRINT
  46.      INPUT "ENTER FORWARD POWER (WATTS): "; PF
  47.      PRINT
  48.      INPUT "ENTER REFLECTED POWER (WATTS): "; PR
  49.  
  50.        RHOP = PR / PF
  51.        RHO = SQR(RHOP)
  52.        RL = 20 * LOG(RHO) / LOG(10)
  53.        S = (1 + RHO) / (1 - RHO)
  54.  
  55.      PRINT
  56.      PRINT USING "VSWR = ##.##"; S
  57.      PRINT USING "REFLECTION COEFFICIENT = 0.###"; RHO
  58.      PRINT USING "RETURN LOSS =  +##.# DB."; RL
  59.  
  60.      PRINT
  61.      PRINT "CHOOSE:"
  62.      PRINT
  63.      PRINT "    1. ANOTHER CALCULATION."
  64.      PRINT "    2. RETURN TO MAIN MENU."
  65.      PRINT "                             ENTER CHOICE 1 OR 2:";
  66.      INPUT CHOICE
  67.      ON CHOICE GOTO CONVERT, MENU
  68.      GOTO CONVERT  'catch incorrect choice
  69.  
  70. CONVERT2:
  71.      PRINT
  72.      INPUT "ENTER FORWARD POWER (WATTS): "; PF
  73.      PRINT
  74.      INPUT "ENTER VSWR: "; S
  75.      PRINT
  76.  
  77.        RHO = (S - 1) / (S + 1)
  78.        RHOP = RHO ^ 2
  79.        PR = RHOP * PF
  80.  
  81.      PRINT
  82.      PRINT USING "REFLECTED POWER (WATTS) = ####.# "; PR
  83.  
  84.      PRINT
  85.      PRINT "CHOOSE:"
  86.      PRINT
  87.      PRINT "    1. ANOTHER CALCULATION."
  88.      PRINT "    2. RETURN TO MAIN MENU."
  89.      PRINT "                             ENTER CHOICE 1 OR 2: ";
  90.      INPUT CHOICE
  91.      ON CHOICE GOTO CONVERT, MENU
  92.      GOTO CONVERT   'catch incorrect entry
  93.  
  94.  
  95. CONVERT3:
  96.      PRINT
  97.      INPUT "ENTER REFLECTED POWER (WATTS): "; PR
  98.      PRINT
  99.      INPUT "ENTER VSWR: "; S
  100.      PRINT
  101.  
  102.        RHO = (S - 1) / (S + 1)
  103.        RHOP = RHO ^ 2
  104.        PF = PR / RHOP
  105.  
  106.      PRINT
  107.      PRINT USING "FORWARD POWER (WATTS) = ####.# "; PF
  108.  
  109.      PRINT
  110.      PRINT "CHOOSE:"
  111.      PRINT
  112.      PRINT "    1. ANOTHER CALCULATION."
  113.      PRINT "    2. RETURN TO MAIN MENU."
  114.      PRINT "                             ENTER CHOICE 1 OR 2: ";
  115.      INPUT CHOICE
  116.      ON CHOICE GOTO CONVERT, MENU
  117.      GOTO CONVERT   'catch incorrect entry
  118.  
  119. COAX:   'line loss calculation from mfg data
  120. CLS
  121.      PRINT "╔═══════════════════════════════════════════════════════════════╗"
  122.      PRINT "║  TRUE TRANSMISSION LINE LOSS & VSWR CALCULATIONS - MODULE 7   ║"
  123.      PRINT "╚═══════════════════════════════════════════════════════════════╝"
  124.      PRINT
  125.      PRINT "You will be asked to enter, from manufacturer's data, the rated"
  126.      PRINT "line loss in dB/100 feet -or- dB/100 meters for the transmission"
  127.      PRINT "line being used. You will also have to enter the frequency (MHz)"
  128.      PRINT "at which this rated loss is given (typically 10 or 100 MHz)."
  129.      PRINT "Then you will be asked for the actual length of transmission "
  130.      PRINT "line in the same units (feet or meters). Finally, you will enter"
  131.      PRINT "the actual frequency of operation (in MHz)."
  132.      PRINT
  133.      PRINT "The program will then compute the RATED line loss in dB for"
  134.      PRINT "the conditions specified. This is NOT the actual line loss."
  135.      PRINT "To get actual (true) line loss, select option 3 or 4 "
  136.      PRINT "from the Main Menu."
  137.      PRINT
  138.      INPUT "ENTER RATED LINE LOSS (dB/100 ft-OR-dB/100 meters): "; R
  139.      INPUT "ENTER ACTUAL LINE LENGTH (in same units, ft or meters): "; L
  140.      INPUT "ENTER FREQUENCY (MHz) AT WHICH RATING IS GIVEN: "; FR
  141.      INPUT "ENTER ACTUAL FREQUENCY OF OPERATION (MHz): "; FA
  142.      PRINT
  143.  
  144.        R = ABS(R)
  145.        RL = R * L / 100
  146.        ALL = RL * SQR(FA / FR)
  147.  
  148.      PRINT USING "RATED LINE LOSS FOR CONDITIONS SPECIFIED = ##.# dB."; ALL
  149.  
  150.      PRINT
  151.      PRINT "CHOOSE:"
  152.      PRINT
  153.      PRINT "    1. ANOTHER CALCULATION."
  154.      PRINT "    2. RETURN TO MAIN MENU."
  155.      PRINT "                             ENTER CHOICE 1 OR 2: ";
  156.      INPUT CHOICE
  157.      ON CHOICE GOTO COAX, MENU
  158.      GOTO MENU                           'catch incorrect entry
  159.  
  160.  
  161. SOURCE:   'true line loss, entering condx at xmtr end of line
  162. CLS
  163.      PRINT "╔═══════════════════════════════════════════════════════════════╗"
  164.      PRINT "║  TRUE TRANSMISSION LINE LOSS & VSWR CALCULATIONS - MODULE 7   ║"
  165.      PRINT "╚═══════════════════════════════════════════════════════════════╝"
  166.      PRINT
  167.  
  168.      D = 0: S = 1: SP = 1: DP = 0: ADDL = 0  'reset variables
  169.  
  170.      INPUT "ENTER RATED LINE LOSS (dB) FOR LENGTH OF LINE USED: "; D
  171.      INPUT "ENTER ANY ADDITIONAL LOSSES (FILTERS, ETC.) IN dB: "; ADDL
  172.      INPUT "ENTER VSWR AT TRANSMITTER END OF LINE: "; S
  173.  
  174.        D = ABS(D)
  175.        RHO = (S - 1) / (S + 1)
  176.        D = D + ADDL
  177.        RHOP = RHO * EXP(.2303 * D)
  178.        SP = (1 + RHOP) / (1 - RHOP)
  179.        N = (S - (1 / S)) / (SP - (1 / SP))
  180.        DP = 10 * (LOG(N)) / LOG(10)
  181.  
  182.      PRINT
  183.      PRINT USING "TRUE VSWR AT ANTENNA END OF LINE = ##.##"; SP
  184.      PRINT USING "TRUE OVERALL LOSS IN dB = +##.##"; DP
  185.      PRINT USING "TRUE TRANSMISSION LINE OPERATING EFFICIENCY = ###.# PERCENT"; N * 100
  186.      PRINT
  187.      PRINT "CHOOSE:"
  188.      PRINT
  189.      PRINT "    1. ANOTHER CALCULATION."
  190.      PRINT "    2. RETURN TO MAIN MENU."
  191.      PRINT "                              ENTER CHOICE 1 OR 2: ";
  192.      INPUT CHOICE
  193.  
  194.        ON CHOICE GOTO SOURCE, MENU
  195.        GOTO MENU  'catch incorrect choice
  196.  
  197.  
  198. LOAD:
  199. CLS
  200.      PRINT "╔═══════════════════════════════════════════════════════════════╗"
  201.      PRINT "║  TRUE TRANSMISSION LINE LOSS & VSWR CALCULATIONS - MODULE 7   ║"
  202.      PRINT "╚═══════════════════════════════════════════════════════════════╝"
  203.      PRINT
  204.  
  205.      D = 0: S = 1: SP = 1: DP = 0: ADDL = 0  'reset variables
  206.  
  207.      INPUT "ENTER RATED LINE LOSS (dB) FOR LENGTH OF LINE USED: "; D
  208.      INPUT "ENTER ANY ADDITIONAL LOSSES (FILTERS, ETC.) IN dB: "; ADDL
  209.      INPUT "ENTER VSWR AT ANTENNA END OF LINE: "; S
  210.  
  211.        D = ABS(D)
  212.        RHO = (S - 1) / (S + 1)
  213.        D = D + ADDL
  214.        RHOP = RHO * EXP(-.2303 * D)
  215.        SP = (1 + RHOP) / (1 - RHOP)
  216.        N = (SP - (1 / SP)) / (S - (1 / S))
  217.        DP = 10 * LOG(N) / LOG(10)
  218.  
  219.      PRINT
  220.      PRINT USING "VSWR AT TRANSMITTER END OF LINE = ##.##"; SP
  221.      PRINT USING "TRUE OVERALL LOSS IN dB = +##.##"; DP
  222.      PRINT USING "TRUE TRANSMISSION LINE OPERATING EFFICIENCY = ###.# PERCENT"; N * 100
  223.  
  224.      PRINT
  225.      PRINT "CHOOSE:"
  226.      PRINT
  227.      PRINT "    1. ANOTHER CALCULATION."
  228.      PRINT "    2. RETURN TO MAIN MENU."
  229.      PRINT "                              ENTER CHOICE 1 OR 2: ";
  230.      INPUT CHOICE
  231.  
  232.        ON CHOICE GOTO LOAD, MENU
  233.        GOTO MENU  'catch incorrect choice
  234.  
  235.  
  236. ENDING:
  237.  
  238.     PRINT
  239.     PRINT "                ≡≡≡ PROGRAM COMPLETED ≡≡≡"
  240.  
  241. END
  242.  
  243.  
  244. '╔═══════════════════════════════════════════════════════════╗
  245. '║                  Program Author                           ║
  246. '║             ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡                     ║
  247. '║                                                           ║
  248. '║              Jacob Z. Schanker, P.E.                      ║
  249. '║                                                           ║
  250. '║              Last revised: May 1990                       ║
  251. '║                                                           ║
  252. '╚═══════════════════════════════════════════════════════════╝
  253.  
  254. TITLE:
  255. 'opening screen for meteor burst programs
  256. CLS
  257.  
  258. LOCATE 5, 25
  259. PRINT "Supplemental Computer Programs"
  260. LOCATE 6, 38
  261. PRINT "to"
  262. LOCATE 7, 27
  263. PRINT "METEOR BURST COMMUNICATION"
  264. LOCATE 9, 38
  265. PRINT "by"
  266. LOCATE 10, 31
  267. PRINT "Jacob Z. Schanker"
  268. LOCATE 14, 24
  269. PRINT "COPYRIGHT 1990 ARTECH HOUSE, INC."
  270. LOCATE 22, 25
  271. PRINT "<< Press any key to continue >>"
  272. WHILE INKEY$ = ""
  273. WEND
  274. CLS
  275. RETURN
  276.  
  277.